1. Field
This disclosure relates generally to processors and, more specifically, to processors that have many cores.
2. Description
Process technology scaling has enabled many-core super-scalar microprocessors, e.g. there may be 256 processor cores on a single die. The process technology scaling is achieved by scaling down device sizes and lowering supply voltages. A many-core processor may have better performance than a single-core or a multi-core processor because many cores may work in parallel to achieve higher performance. Additionally, a many-core processor may consume less power than a single-core or multi-core processor because each core in the many-core processor normally requires a lower voltage supply than a core in the single-core or multi-core processor although the maximum voltage may be the same. Because basic components (e.g., transistors) are smaller, lines are thinner, and distances between components/lines are finer inside a many-core processor than those in a single-core or multi-core processor, the many-core processor may be less resistant to heat. Thus, it is desirable to reduce the power consumption by a many-core processor.
In a typical computer system using a many-core processor, all of the cores in the many-core processor are supplied with the same voltage. The voltage regulator (“VR”) on the motherboard supplies a single voltage (“Vcc”) to all the cores and storage units (e.g., memories and caches) in the many-core processor and supplies another voltage (“Vtt”) to all of the input/output (“I/O”) units in the processor.
However, cores in a many-core processor may require different supply voltages. The operation of a core depends on application, core temperature, transient current consumption, reliability, and other factors. For example, in some applications, some cores may not be active until they are required to function after some other cores are deemed unreliable due to variations and time dependent degradation. Those inactive cores may only require a very low supply voltage or may be simply shut off. For those active cores, their voltage requirements may be different. Even inside a single core, non-active parts may be shut down and non-performance-critical parts may be put on lower voltage to save active power. Thus, variable core-level or even subcore-level Vcc modulation and fast activation/shut-off may provide significant power savings. Such desirable features of delivering voltages to a many-core processor require multi-Vcc supply rather than a single Vcc supply.
It is difficult to supply multi-VCC to a many-core processor through motherboard VRs. Each Vcc supply may have multiple phases and each phase needs to have its own inductor. An external VR module (“VRM”) on the motherboard is not likely to enable a many-Vcc solution because a motherboard cannot accommodate so many inductors. Additionally, the motherboard based power delivery system does not have enough area on either the mother board, or the socket, or the package to route separate supply voltages to each of the cores and/or other units in the many-core processor. Furthermore, the response time of a motherboard VR (typically in the order of milliseconds) is typically not quick enough to respond to changes of a core's voltage needs (typically in the order of nanoseconds). Therefore, it is desirable to have a solution under which multi-VCC may be supplied to a many-core processor and under which voltage supply to a core may be quickly activated or shut off.